//
//  MCResponseTool.h
//  iMooc
//
//  Created by CoderXSLee on 13/6/3.
//  Copyright © 2013年 李雪松. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "MCAnalyzedResult.h"

/// 请求结果的回调
typedef void (^RequestResponse)(MCAnalyzedResult *result, id object);
/// 解析结果的回调
typedef void (^AnalyzedBlock)(MCAnalyzedResult *result, id data);


@interface MCResponseTool : NSObject

/**
 *  将请求数据解析为业务数据
 *
 *  @param result        请求结果
 *  @param response      请求数据
 *  @param modelClass    业务数据模型
 *  @param analyzedBlock 解析完成后的回调通知
 */
+ (void)analyzeDataWithResult:(MCCommonResult *)result
                     response:(id)response
                   modelClass:(Class)modelClass
                analyzedBlock:(AnalyzedBlock)analyzedBlock;

/// 根据 url 跟 parameter 获取 缓存的 key
+ (NSString *)getCacheKeyWithUrlString:(NSString *)url
                            parameters:(NSDictionary *)parameters;


@end
